#ifndef INFINITY_COLLECTIBLE_ENTITY_INL
#	define INFINITY_COLLECTIBLE_ENTITY_INL

namespace infinity {

inline void CollectibleEntity::setInitialPosition(const Vector3f& position)
{
	m_initialPosition = position;
}

inline void CollectibleEntity::setInitialVelocity(const Vector3f& velocity)
{
	m_initialVelocity = velocity;
}

inline void CollectibleEntity::setTimeToLive(dw::float32 timeToLive)
{
	m_timeToLive = timeToLive;
}

inline /*virtual*/ const Matrix4f& CollectibleEntity::getMatrix()
{
	return m_physicObject->getTransform();
}

inline /* virtual */ Object CollectibleEntity::getObject()
{
	return m_object;
}

inline CollectibleEntity::CollectibleEntity()
:	super()
,	m_physicObject(NULL)
,	m_graphicsModel(NULL)
,	m_initialPosition(Vector3f::zero)
,	m_initialVelocity(Vector3f::zero)
,	m_timeToLive(InfiniteTime)
{
	m_object.type = Object::EMPTY;
	m_object.id = 0;

}

} // namespace infinity

#endif // !INFINITY_COLLECTIBLE_ENTITY_INL
